#include "fira-mono24_digits.hpp"

namespace muil {

// 
//  Font data for Fira Mono 24pt
// 

// Character bitmaps for Fira Mono 24pt
const uint8_t firaMono24ptBitmaps[] = 
{
	// @0 '+' (12 pixels wide)
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0xFF, 0xF0, 0xFF, 0xF0, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 

	// @46 '-' (11 pixels wide)
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE0, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 

	// @92 '.' (5 pixels wide)
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xF8, 0xF8, 0xF8, 0x70, 0x00, 

	// @115 '0' (15 pixels wide)
	0x07, 0xC0, 0x1F, 0xF0, 0x3C, 0x78, 0x38, 0x38, 0x70, 0x1C, 0x70, 0x1C, 0x70, 0x0C, 0x70, 0x0E, 0xE0, 0x0E, 0xE3, 0x8E, 0xE3, 0xCE, 0xE3, 0xCE, 0xE3, 0x8E, 0xE0, 0x0E, 0x70, 0x0E, 0x70, 0x0C, 0x70, 0x1C, 0x70, 0x1C, 0x38, 0x38, 0x3C, 0x78, 0x1F, 0xF0, 0x07, 0xC0, 0x00, 0x00, 

	// @161 '1' (14 pixels wide)
	0x03, 0x80, 0x0F, 0x80, 0x1F, 0x80, 0x7F, 0x80, 0xF3, 0x80, 0x63, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x7F, 0xFC, 0x7F, 0xFC, 0x00, 0x00, 

	// @207 '2' (14 pixels wide)
	0x0F, 0xC0, 0x3F, 0xF0, 0x78, 0x78, 0xE0, 0x38, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x7F, 0xFC, 0x7F, 0xFC, 0x00, 0x00, 

	// @253 '3' (14 pixels wide)
	0x0F, 0xC0, 0x3F, 0xF0, 0x70, 0x78, 0x20, 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x07, 0xE0, 0x07, 0xF0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x40, 0x3C, 0xF0, 0x78, 0x7F, 0xF0, 0x1F, 0xC0, 0x00, 0x00, 

	// @299 '4' (15 pixels wide)
	0x03, 0x00, 0x03, 0x80, 0x03, 0x80, 0x07, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x30, 0x38, 0x70, 0x38, 0x70, 0x70, 0x70, 0x70, 0x70, 0xF0, 0x70, 0xFF, 0xFE, 0xFF, 0xFE, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x00, 

	// @345 '5' (15 pixels wide)
	0x3F, 0xFC, 0x3F, 0xF8, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x3F, 0xE0, 0x3F, 0xF8, 0x38, 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x1C, 0x20, 0x3C, 0x78, 0x78, 0xBF, 0xF0, 0x0F, 0xC0, 0x00, 0x00, 

	// @391 '6' (15 pixels wide)
	0x03, 0xF0, 0x07, 0xF8, 0x1E, 0x10, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0x70, 0x00, 0x63, 0xE0, 0x6F, 0xF8, 0xFC, 0x3C, 0xF8, 0x1C, 0xF0, 0x1E, 0xE0, 0x0E, 0x60, 0x0E, 0x70, 0x0E, 0x70, 0x0E, 0x70, 0x1C, 0x38, 0x1C, 0x3C, 0x38, 0x1F, 0xF0, 0x07, 0xE0, 0x00, 0x00, 

	// @437 '7' (13 pixels wide)
	0xFF, 0xF8, 0xFF, 0xF8, 0x00, 0x38, 0x00, 0x38, 0x00, 0x70, 0x00, 0x70, 0x00, 0xE0, 0x00, 0xE0, 0x01, 0xC0, 0x01, 0xC0, 0x03, 0xC0, 0x03, 0x80, 0x03, 0x80, 0x07, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x18, 0x00, 0x00, 0x00, 

	// @483 '8' (15 pixels wide)
	0x07, 0xE0, 0x1F, 0xF8, 0x38, 0x38, 0x70, 0x1C, 0x70, 0x1C, 0x70, 0x1C, 0x70, 0x1C, 0x78, 0x1C, 0x3C, 0x38, 0x1F, 0x70, 0x0F, 0xE0, 0x1D, 0xF8, 0x70, 0x3C, 0x70, 0x1E, 0xE0, 0x0E, 0xE0, 0x0E, 0xE0, 0x0E, 0xE0, 0x0E, 0x70, 0x1E, 0x78, 0x3C, 0x3F, 0xF8, 0x0F, 0xE0, 0x00, 0x00, 

	// @529 '9' (15 pixels wide)
	0x07, 0xC0, 0x1F, 0xF0, 0x38, 0x38, 0x70, 0x1C, 0x70, 0x1C, 0xE0, 0x1E, 0xE0, 0x0E, 0xE0, 0x0E, 0xE0, 0x0E, 0x70, 0x1E, 0x70, 0x1E, 0x38, 0x7E, 0x1F, 0xEE, 0x0F, 0x9C, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x70, 0x01, 0xF0, 0x03, 0xC0, 0x1F, 0x80, 0x3E, 0x00, 0x10, 0x00, 
};

// Character descriptors for Fira Mono 24pt
// { [Char width in bits], [Offset into firaMono24ptCharBitmaps in bytes] }
const FontCharInfo firaMono24ptDescriptors[] =
{
	{L'+', 12, 0}, 		// + 
	{L'-', 11, 46}, 		// - 
	{L'.', 5, 92}, 		// . 
	{L'0', 15, 115}, 		// 0 
	{L'1', 14, 161}, 		// 1 
	{L'2', 14, 207}, 		// 2 
	{L'3', 14, 253}, 		// 3 
	{L'4', 15, 299}, 		// 4 
	{L'5', 15, 345}, 		// 5 
	{L'6', 15, 391}, 		// 6 
	{L'7', 13, 437}, 		// 7 
	{L'8', 15, 483}, 		// 8 
	{L'9', 15, 529}, 		// 9 
    {0, 0, 0},
};

// Font information for Fira Mono 24pt
const FontInfo firaMono24ptFontInfo =
{
	23, //  Character height
	2, //  Width, in pixels, of space character
	firaMono24ptDescriptors, //  Character descriptor array
	firaMono24ptBitmaps, //  Character bitmap array
};

} // namespace muil
